// miniprogram/pages/lost-found/detail.js
import { formatTime } from '../../utils/util'
Page({
  /**
   * 页面的初始数据
   */
  data: {
    loading: true,
    dynamicObj: {},      
    watchNum: 0,  // 浏览数
    lostId: 0,
    commentContent: '',
    comment: [
      // { name: '罗柳', 
      //   avatar: 'https://7465-test-0gnibtq0d1e1243a-1304764432.tcb.qcloud.la/%E7%BD%97%E6%9F%B3.jpg?sign=a47c974c7ada3f2325e768b2641fd5a3&t=1620286938',
      //   content: '我看见了机房的靠后排的桌子上，昨天晚上自习的时候还在那里',
      //   lowerComment: [
      //     { name: '王良鑫' , content: '好的，我这就去那里找一下'}
      //   ]
      // },
      // { name: '陈阳', 
      //   avatar: 'https://7465-test-0gnibtq0d1e1243a-1304764432.tcb.qcloud.la/%E9%99%88%E9%98%B3.jpg?sign=83b6352316612c3b5ba27cc6365e9f29&t=1620286747',
      //   content: '我也看见了',
      //   lowerComment: [
      //     { name: '王良鑫' , content: '好的，谢谢'}
      //   ]
      // }
    ],   
    // 评论
    doComment: false,  
    appreciate: false,  // 点赞
    subtime: ""
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
   
    var timeout = setTimeout(()=>{
      this.setData({
        loading: false
      })
    }, 1000)
    this.setData({
      doComment:false
    })
    
    // console.log(options.lostId)
  
    this.setData({
      watchNum: options.watchNum,
      lostId:  options.lostId
    })

    // console.log(this.data.lostId)

    // -------调用云函数查找失物招领的详情---------
    wx.cloud.callFunction({
      name: 'getLostDetails',
      data:{
        lostId: this.data.lostId
      }
    }).then(res=>{
      // console.log(res)
      this.setData({
        dynamicObj: res.result.data[0]
      })
    })
    // ------------------------------------------

    this.getComment()
   
  },


  getComment(){
     // -----获取评论------------
     wx.cloud.callFunction({
      name: 'getComment',
      data:{
        lostId: this.data.lostId
      }
    }).then(res=>{
      console.log(res)
      if(res.result.data.length>0){
        this.setData({
          comment: res.result.data[0].comment
        })
      }else{
        // console.log('no comment')
      }
    })
    // ------------------------------------------
  },
  clickImg(e){
    var index = e.currentTarget.dataset.imageindex
    wx.previewImage({
      urls: this.data.dynamicObj.imageUrl,
      current: this.data.dynamicObj.imageUrl[index]
    })
  },


  appreciate(){
    this.setData({
      appreciate: !this.data.appreciate
    })
  },

  // ----------评论---------------
  // 点击图标，输入框获取焦点
  createComment(){
    // console.log("123")
    this.setData({
      doComment: true
    })
  },

  sendComment(){
    let date = new Date()
    let submitTime = formatTime(date)
    
    // 1，判断是否登录，未登录者不可以评论
    let userInfo  = wx.getStorageSync('userInfo')
    if(userInfo !== ''){ // 已登录
      // console.log('ready login')
      // 2, 获取头像和名字
      let { 
        userName,
        avatar,
      } = userInfo

      this.setData({
        userName,
        avatar,
      })
      // 3，获得输入数据
      // console.log(this.data.commentContent)
      // 插入到数据库
      if(this.data.commentContent !=''){

        wx.showLoading()
        wx.cloud.callFunction({
          name: 'updateComment',
          data:{
            avatar,
            name:userName,
            content: this.data.commentContent,
            lostId: this.data.lostId,
            subtime: submitTime
          }
        }).then(res=>{
          // console.log(res)
          if(res.result.stats.updated != 1){
            // console.log('直接插入失败')
            // 在commentList中插入一条记录
            this.newComment(submitTime)
          }else{  // 直接插入成功

            wx.hideLoading()
            this.setData({
              commentContent: ''
            })
            this.getComment()
          }
        })
      }
     
    }else{  //  未登录
      wx.showToast({
        title: '未登录',
        icon: 'error'
      })
    }
  },

  newComment(submitTime){
    wx.cloud.callFunction({
      name: 'newComment',
      data:{
        avatar: this.data.avatar,
        name:this.data.userName,
        content: this.data.commentContent,
        lostId: this.data.lostId,
        subtime: submitTime
      }
    }).then(res =>{
      // console.log(res)
     if(res.result.errMsg == "collection.add:ok"){  // 插入成功

        wx.hideLoading()
        this.setData({
          commentContent: ''
        })
        this.getComment()
      }
    })
  },
  finishInput(e){
    // console.log(e)
    this.setData({
      commentContent: e.detail.value
    })
  },
  // ---------------------------

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {
    clearTimeout(timeout)
  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})